Telegram Group & Telegram Channel
Python Hints
Photo
داشتم یک کدی رو امروز روش کار میکردم؛ که یک سری کانفیگ از یوزر میگیره اما اگر وجود نداشت یک سری دیفالت رو بجاش استفاده می‌کنه و تمام این تنظیمات dictionary هستند.

مشکل بعدیش این بود که تنظیمات دیفالت هم خودش توسط یگ یوزر دیگه تعریف میشه و لزوما تنظیمات صفر ابزار ما نیست.

بطور خلاصه ما یک dict داریم که خودش یک سری تنظیمات داره؛ ولی ممکنه یک بخش‌هایی رو یک نفر بخواد تغییر بده پس باید overwrite بشه! ولی اجازه overwrite نداریم چون ممکنه کاربر نهایی تنظیماتش رو بخواد reset کنه ولی این وسط ممکنه تنظیمات از طریق مشتری‌های میانی به دست کاربر نهایی رسیده باشه و مشتری میانی نخواد کاربر رو مستقیم به ما وصل کنه (مطمئن باشه ما دورش نمیزنیم ولی خودش هم برنامه‌نویس نیست که سایت و ابزار‌های خودش رو توسعه بده)

خلاصه که ممکنه چیزی که نهایتا به مشتری آخر میرسه اینطوری باشه :
default -> default -> default -> ....... -> default
و بعد مشتری نهایی سیستم اون رو برای خودش شخصی‌سازی کنه.

کلی راهکار پیشنهاد شد؛ یکباره یاد ChainMap توی پایتون افتادم اول رفتم یک تست گرفتم مطمئن بشم به محدودیت‌های بیزینس نمیخوریم بعد کد رو دادیم رفت بالا (شد بهترین راهکار) چون خودم اصلا یادم نبود که ChainMap همچین کاربردی داشته باشم گفتم با شما هم به اشتراک بذارم.

اگر یکی از مقادیر توسط مشتری‌ها تعریف نشده باشه؛ در اونصورت از دیکشنری default خونده میشه.



tg-me.com/pyHints/822
Create:
Last Update:

داشتم یک کدی رو امروز روش کار میکردم؛ که یک سری کانفیگ از یوزر میگیره اما اگر وجود نداشت یک سری دیفالت رو بجاش استفاده می‌کنه و تمام این تنظیمات dictionary هستند.

مشکل بعدیش این بود که تنظیمات دیفالت هم خودش توسط یگ یوزر دیگه تعریف میشه و لزوما تنظیمات صفر ابزار ما نیست.

بطور خلاصه ما یک dict داریم که خودش یک سری تنظیمات داره؛ ولی ممکنه یک بخش‌هایی رو یک نفر بخواد تغییر بده پس باید overwrite بشه! ولی اجازه overwrite نداریم چون ممکنه کاربر نهایی تنظیماتش رو بخواد reset کنه ولی این وسط ممکنه تنظیمات از طریق مشتری‌های میانی به دست کاربر نهایی رسیده باشه و مشتری میانی نخواد کاربر رو مستقیم به ما وصل کنه (مطمئن باشه ما دورش نمیزنیم ولی خودش هم برنامه‌نویس نیست که سایت و ابزار‌های خودش رو توسعه بده)

خلاصه که ممکنه چیزی که نهایتا به مشتری آخر میرسه اینطوری باشه :
default -> default -> default -> ....... -> default
و بعد مشتری نهایی سیستم اون رو برای خودش شخصی‌سازی کنه.

کلی راهکار پیشنهاد شد؛ یکباره یاد ChainMap توی پایتون افتادم اول رفتم یک تست گرفتم مطمئن بشم به محدودیت‌های بیزینس نمیخوریم بعد کد رو دادیم رفت بالا (شد بهترین راهکار) چون خودم اصلا یادم نبود که ChainMap همچین کاربردی داشته باشم گفتم با شما هم به اشتراک بذارم.

اگر یکی از مقادیر توسط مشتری‌ها تعریف نشده باشه؛ در اونصورت از دیکشنری default خونده میشه.

BY Python Hints




Share with your friend now:
tg-me.com/pyHints/822

View MORE
Open in Telegram


Python Hints Telegram | DID YOU KNOW?

Date: |

Tata Power whose core business is to generate, transmit and distribute electricity has made no money to investors in the last one decade. That is a big blunder considering it is one of the largest power generation companies in the country. One of the reasons is the company's huge debt levels which stood at ₹43,559 crore at the end of March 2021 compared to the company’s market capitalisation of ₹44,447 crore.

Among the actives, Ascendas REIT sank 0.64 percent, while CapitaLand Integrated Commercial Trust plummeted 1.42 percent, City Developments plunged 1.12 percent, Dairy Farm International tumbled 0.86 percent, DBS Group skidded 0.68 percent, Genting Singapore retreated 0.67 percent, Hongkong Land climbed 1.30 percent, Mapletree Commercial Trust lost 0.47 percent, Mapletree Logistics Trust tanked 0.95 percent, Oversea-Chinese Banking Corporation dropped 0.61 percent, SATS rose 0.24 percent, SembCorp Industries shed 0.54 percent, Singapore Airlines surrendered 0.79 percent, Singapore Exchange slid 0.30 percent, Singapore Press Holdings declined 1.03 percent, Singapore Technologies Engineering dipped 0.26 percent, SingTel advanced 0.81 percent, United Overseas Bank fell 0.39 percent, Wilmar International eased 0.24 percent, Yangzijiang Shipbuilding jumped 1.42 percent and Keppel Corp, Thai Beverage, CapitaLand and Comfort DelGro were unchanged.

Python Hints from cn


Telegram Python Hints
FROM USA